package picoevo.es.cmaes.cma;

/**
 * solution point in search space. This class definition is a plain
 * implementation of the interface Solution and might be subject to changes in
 * future versions.
 * 
 * @see ISolution interface
 */
public class SolutionGeneric implements ISolution {
	public SolutionGeneric() {
	}

	public SolutionGeneric(double[] x, double functionValue, long evaluation) {
		super();
		this.functionValue = functionValue;
		this.x = x;
		this.evaluation = evaluation;
	}

	public SolutionGeneric(double[] x) {
		this.x = x;
	}

	public double getFunctionValue() {
		return functionValue;
	}

	public long getEvaluation() {
		return evaluation;
	}

	public double[] getX() {
		return x;
	}

	/** objective function value of x */
	double functionValue = Double.MAX_VALUE;

	/** argument to objective function to be optimized */
	double[] x;

	/** count when the solution was evaluated */
	long evaluation;
}
